package com.fufan.mtsaas.modules.newtech.xjsreviewclinicalapplicationreport.model;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 2023年度医疗技术临床应用情况报告表
 *
 * @author Liby
 * @date 2025-01-05
 */
@Data
@ApiModel(description = "2023年度医疗技术临床应用情况报告表")
@TableName("xjs_review_clinical_application_report")
public class XjsReviewClinicalApplicationReport implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    @ApiModelProperty(value = "唯一标识")
    private int id;
    @ApiModelProperty(value = "不予理会：关联id")
    private Integer correlationId;
    @ApiModelProperty(value = "不予理会：项目编号")
    private String projectNo;
    @ApiModelProperty(value = "技术名称")
    private String technologyName;
    @ApiModelProperty(value = "联系人")
    private String contactPerson;
    @ApiModelProperty(value = "准入文号")
    private String approvalNumber;
    @ApiModelProperty(value = "相应诊疗科目")
    private String relatedDiagnosisSubject;
    @ApiModelProperty(value = "所属科室")
    private String department;
    @ApiModelProperty(value = "联系电话")
    private String contactPhone;
    @ApiModelProperty(value = "准入日期")
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date approvalDate;
    @ApiModelProperty(value = "诊疗病例数")
    private Integer totalCases;
    @ApiModelProperty(value = "不良反应，0表示无，1表示有")
    private Integer adverseReactions;
    @ApiModelProperty(value = "不良反应 病例数")
    private Integer adverseReactionCases;
    @ApiModelProperty(value = "适应症掌握情况 0表示不符合，1表示符合")
    private Integer suitabilityCompliance;
    @ApiModelProperty(value = "适应症掌握情况 病例数")
    private Integer unsuitableCases;
    @ApiModelProperty(value = "并发症，0表示无，1表示有")
    private Integer complications;
    @ApiModelProperty(value = "并发症 病例数")
    private Integer complicationCases;
    @ApiModelProperty(value = "随访数，0表示无，1表示有")
    private Integer followUp;
    @ApiModelProperty(value = "随访数 病例数")
    private Integer followUpCases;
    @ApiModelProperty(value = "临床应用效果 - 有效病例数")
    private Integer clinicalEffectivenessEffective;
    @ApiModelProperty(value = "临床应用效果 - 无效病例数")
    private Integer clinicalEffectivenessIneffective;
    @ApiModelProperty(value = "临床应用效果 - 不确切病例数")
    private Integer clinicalEffectivenessUncertain;
    @ApiModelProperty(value = "该项医疗技术被卫生部废除或禁止使用，0表示否，1表示是")
    private Integer suspendedReason1;
    @ApiModelProperty(value = "从事该项医疗技术主要专业技术人员或者关键设备、设施及其他辅助条件发生变化，不能正常临床应用，0表示否，1表示是")
    private Integer suspendedReason2;
    @ApiModelProperty(value = "发生与该项医疗技术直接相关的严重不良后果，0表示否，1表示是")
    private Integer suspendedReason3;
    @ApiModelProperty(value = "该项医疗技术存在医疗质量和医疗安全隐患，0表示否，1表示是")
    private Integer suspendedReason4;
    @ApiModelProperty(value = "该项医疗技术存在伦理缺陷，0表示否，1表示是")
    private Integer suspendedReason5;
    @ApiModelProperty(value = "该项医疗技术临床应用效果不确切，0表示否，1表示是")
    private Integer suspendedReason6;
    @ApiModelProperty(value = "与该项医疗技术有关的专业技术人员或者设备、设施、辅助条件发生变化，可能会对医疗技术临床应用带来不确定后果的，0表示否，1表示是")
    private Integer reviewReason1;
    @ApiModelProperty(value = "该项医疗技术非关键环节发生改变的，0表示否，1表示是")
    private Integer reviewReason2;
    @ApiModelProperty(value = "准予该项医疗技术诊疗科目登记后1年内未在临床应用的，0表示否，1表示是")
    private Integer reviewReason3;
    @ApiModelProperty(value = "该项医疗技术中止1年以上拟重新开展的，0表示否，1表示是")
    private Integer reviewReason4;
    @ApiModelProperty(value = "其他报告事项，0表示无，1表示有")
    private Integer otherIssues;

}
